// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

using System.IO.Pipelines;

namespace MQTTnet.Tests.ASP.Mockups
{
    public sealed class DuplexPipeMockup : IDuplexPipe
    {
        public DuplexPipeMockup()
        {
            var pool = new LimitedMemoryPool();
            var pipeOptions = new PipeOptions(pool);
            Receive = new Pipe(pipeOptions);
            Send = new Pipe(pipeOptions);
        }

        PipeReader IDuplexPipe.Input => Receive.Reader;

        PipeWriter IDuplexPipe.Output => Send.Writer;

        public Pipe Receive { get; } 

        public Pipe Send { get; }
    }
}
